Font-Such-Pfade

Eines vorweg: das Programm bevorzugt nach Möglichkeit immer die Fontlibraries, die meiner Meinung nach viele Vorteile haben.

Das sind (kurz zusammengefaß<#632#><#632#>t): <#633#>;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;-- <#633#> sie sparen einiges an Speicherplatz auf sie kann schneller zugegriffen werden die Directory-Struktur ist übersichtlicher

Aber das Programm kann auch g�nzlich ohne Fontlibraries arbeiten. Es ist also kein Zwang, sich solche Libraries zuzulegen. Nur in der Suchreihenfolge werden die Fontlibraries bevorzugt.

Wo werden die Fonts gesucht? Startet man ShowDVI<#634#><#634#> ohne weitere Vorbereitungen, so werden Fonts zuerst innerhalb von Fontlibraries in <#635#>TeX:FontLib<#635#> und dann als eingenständiges PK-File in <#636#>TeX:pk<#636#> gesucht. Der jeweilige Filename wird nach folgenden Format Strings ermittelt: <#637#> d/s.dpk <#637#> <#638#> PK04d<#638#> für die Fontlibraries, und <#639#> d/s.dpk<#639#> für die eigenständigen PK-Files. Wie schon im Kapitel über das Fontdefinitions-File gesagt, können diese Formatstrings natürlich auch umdefiniert werden.

Als erste Möglichkeit der Umkonfigurierung bieten sich zwei Environment-Variablen an. Mit <#640#>FLIBDIR<#640#> können weitere Directories definiert werden, in denen sich Fontlibraries befinden und mit <#641#>PKDIR<#641#> Directories in denen PK-Files gefunden werden können. Nach

;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;<#642#>setenv FLIBDIR DH0:flib1,DH1:flib2,FlibDisk:<#642#> ;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;<#643#>setenv PKDIR DH0:pk1,PKDisk:<#643#>

wird ein Font in folgenden Directories gesucht: <#644#>;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;-- <#644#> <#645#>DH0:flib1<#645#>, innerhalb einer Fontlibrary. <#646#>DH1:flib2<#646#>, innerhalb einer Fontlibrary. <#647#>FlibDisk:<#647#>, innerhalb einer Fontlibrary. <#648#>DH0:pk1<#648#>, als eigenständiges PK-File. <#649#>PKDisk:<#649#>, als eigenständiges PK-File. Wurde der Font nun immer noch nicht gefunden, so wird im File <#650#>TeX:pk/fontvols<#650#> nach einer Diskette gesucht, auf der der Font noch sein könnte.

Wurde mittels der Environmentvariable <#651#>FLIBDIR<#651#> oder dem Eintrag <#652#>flibenv<#652#> im Konfigurationsfile ein Suchpfad für Fontlibraries definiert, so wird der Defaulteintrag <#653#>TeX:fontlib<#653#> gelöscht. Falls also dieses Directory benötigt wird, so muß<#654#><#654#> man es selbst in die Liste mit aufnehmen. Dadurch kann man zur Not auch völlig ohne das Assign <#655#>TeX:<#655#> arbeiten.

Das selbe gilt für <#656#>PKDIR<#656#> und <#657#>pkenv<#657#>.

Falls in der Kommandozeile mit der <#658#>fontdir<#658#> Option noch ein weiteres Directory angegeben wurde, so wird dieses jeweils vor dem aktuellen Directory durchsucht. In dem Directory wird also vor dem <#659#>TeX:FontLib<#659#>-Directory nach einer passenden Library gesucht und wenn bis zum Ende der Suchliste der Font immer noch nicht gefunden wurde, so wird vor dem <#660#>TeX:pk<#660#>-Directory noch in dem Directory, das nach der <#661#>fontdir<#661#> steht, Option gesucht.

Reichen diese Möglichkeiten immer noch nicht aus, so können innerhalb des Fontdefinitions-File Fontlibraries und Fonts auch noch einzeln definiert werden.

Dabei wird dann folgende Suchreihenfolge angewand: <#662#>;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;;SPMnbsp;-- <#662#> Als erstes wird in der Liste der einzeln definierten Fonts gesucht. Danach wird in der Liste der vordefinierten Fontlibraries nach Libraries der korrekten DPI-Zahl und innerhalb dieser nach dem Font gesucht. Falls der Font noch nicht gefunden wurde, so werden jetzt die Flib-Directories abgesucht. Definiert werden diese mit der Environment Variable <#663#>FLIBDIR<#663#> und dem Eintrag <#664#>flibenv<#664#> des Fontdefinitionsfiles. Nun wird in der Liste der PK-Directories nach dem passenden PK-File gesucht. Diese Liste kann geändert werden mittels der Environment Variable <#665#>PKDIR<#665#> und dem Eintrag <#666#>pkenv<#666#> des Fontdefinitionsfiles. Als vorletzter Versuch den Font doch noch zu finden werden als nächstes die über den <#667#>pkdir<#667#> Einträgen definierten PK-Directories abgesucht. Zu guter letzt wird das File <#668#>TeX:pk/fontvols<#668#> zu Rate gezogen. Falls der Font damit doch noch gefunden wurde, so wird dieser nach <#669#>TeX:pk<#669#> kopiert. Dies nennt man auch <#670#>Font-Caching<#670#>, da man so seine Fonts einfach alle auf Diskette halten kann und nur die, die wirklich benötigt werden, werden in den <#671#>TeX:pk<#671#> Bereich kopiert. Siehe dazu auch Kapitel 7.3.

Falls alle diese Versuche, einen Font zu finden, fehlschlagen und die Environment Variable ``CALLMF'' mit einem ARexx-Scrip Namen belegt ist, so wird diese Script mit den drei Parametern ``Font Name'', ``Font Auflösung'' und ``Grund Auflösung'' aufgerufen. Sobald diese Script mit dem Return-Code Null beendet ist, wird der gesamte Such-Algorithmus noch einmal durchlaufen. Falls also diese Script den Font mittels Metafont erzeugt hat, braucht so ihn lediglich an einen beliebigen Ort innerhalb des Suchraumes zu kopieren, und ShowDVI verwendet ihn sofort.